﻿using System;
using System.Collections.Generic;

namespace RStein.Posterous.API
{
    internal class SinglePostInfo  : ISinglePostInfo
    {
        #region Implementation of ISinglePostInfo

        public string Link 
        { 
            get; 
            set; 
        }
        
        public string Title
        {
            get;
            set;
        }
        public string Url 
        { 
            get;
            set; 
        }
        public int Id
        {
            get;
            set; 
        }
        public string Body
        {
            get;
            set; 
        }
        
        public DateTime PostDate
        {
            get;
            set; 
        }
        public int Views
        {
            get;
            set; 
        }
        public bool Private
        {
            get;
            set;
        }
        public IAuthor Author
        {
            get;
            set;
        }
        public bool AreCommentsEnabled
        {
            get;
            set; 
        }
        public IEnumerable<IPosterousComment> Comments
        {
            get;
            set; 
        }
        public IEnumerable<IPosterousMedium> Media
        {
            get;
            set; 
        }
        public IEnumerable<string> Tags
        {
            get;
            set; 
        }

        #endregion

        #region Implementation of IExtensionInterface

        public T GetInterface<T>() where T : class
        {
            return this as T;
        }

        #endregion
    }
}